/** ****************************************************************************
 * @file 	comm.h
 * @author 	mojinpan
 * @copyright copyright (c) 2018-2020 mojinpan. All rights reserved.
 * @brief 	通讯接口抽象基类
 *
 * @version 	V1.0
 * @date 	2025-05-25
 * @details
 * 1.初稿
 *******************************************************************************/
#ifndef __COMM_H__
#define __COMM_H__

#include <string>

/*******************************************************************************
								Macro Definition 宏定义
*******************************************************************************/
//协议模块定义---json配置文件中的协议名称
#define  COMM_TYPE_UART "uart"  
/*******************************************************************************
							Class Definition 类定义
*******************************************************************************/
namespace comm_adapter
{
	class Comm
	{
	public:
		virtual std::string type() const = 0;
		virtual void send(const void *data_ptr, size_t data_size) = 0;

		class Parent
		{
		public:
			virtual void onRecv(const std::string &from_who, const void *data_ptr, size_t data_size) = 0;
		};
	};
}

#endif
/*********************************END OF FILE**********************************/
